如何用pascal穷举亲和数[100分]

来源:百度知道 编辑:UC知道 时间:2024/05/30 07:43:37
如何用pascal穷举亲和数?
我自己编了一个
漏洞百出...
谁帮我编一个,非常感谢
要有可读性
不要变量只有abcd的...
怕分浪费了
我之后会追加100分的...
mwyf你无聊啊啊...

接受 siegetank同学批评。。。pascal很久没有用了

for a:=1 to 100 do begin
b:=0;
for c:=1 to a div 2+1 do
if a mod c =0 then inc(b,c);
if (b>a) then begin
d:=0;
for c:=1 to b div 2 +1 do
if b mod c=0 then inc(d,c);
if d=a then begin
writeln(a,b);
end;
end;
end;

输出严格a<b,b表示a这个数因数和,d表示b这个数因数和~

很简单的.你试一试这样.
dim abcd
abcd=1
for(i=1,100)
abcd=abcd+1
loop

program temp;
var
i,b,a,c,d:integer;
begin
for a:=1 to 100 do begin
b:=0;
for c:=1 to int(sqrt(a)) do
if a mod c =0 then inc(b,c);
if (b>=a) then begin
d:=0;
for c:=1 to int(sqrt(b)) do
if b mod c=0 then inc(d,c);
if d=a then begin
writeln(a,b);
end;
end;
end;

陶同学正解
苏同学表无聊